package com.zmn.oms.persistence.interfaces.product;

import com.zmn.oms.model.entity.product.OrderProduct;

import java.util.List;
import org.apache.ibatis.annotations.Param;

/**
 * 类描述：订单产品
 *
 * @author liuying
 * @date 2018/11/06 11:56
 */
public interface OrderProductDao {

    /**
     * 根据订单id集合查询产品
     * @param orderIdList 订单id集合
     * @return 订单产品
     */
    List<OrderProduct> listOrderProductByOrderIdList(@Param("orderIdList") List<Long> orderIdList);

    /**
     * 根据订单ID查询产品列表
     *
     * @param orderId
     * @return
     */
    List<OrderProduct> listByOrderId(Long orderId);

    /**
     * 修改
     *
     * @param orderProduct
     * @return
     */
    int updateByKey(OrderProduct orderProduct);

    /**
     * 新增
     *
     * @param orderProduct
     * @return
     */
    int insertOrderProduct(OrderProduct orderProduct);

    /**
     * 根据订单ID删除
     *
     * @param orderId 订单ID
     * @return
     */
    int deleteByOrderId(Long orderId);

    /**
     * 修改产品ID
     *
     * @param orderProduct
     * @return
     */
    void updateProductIdByKey(OrderProduct orderProduct);

    /**
     * 修改品牌
     * @param orderProduct
     */
    void updateBrandByKey(OrderProduct orderProduct);

    void updateTariffIdByKey(OrderProduct orderProduct);
}